W11_防止 XSS


Posted by Christy on 2021-08-30

hw1 實作_3. XSS

  • 在別人的網站上執行 js 就叫做 XSS

  • 修補 XSS 漏洞

    • 推薦在顯示的時候做 escape,為什麼不在一開始使用者輸入時做呢?假時以後手機的 IOS 或者 Android 都要使用一樣的資料庫,那保持使用者輸入資料的原始資料會比較好

    • htmlspecialchars()

    • 所以我們要在任何使用者可以輸入的地方加上這個函式


如何防止 XSS 攻擊?

在這個範例中,我們在 utils.php 裡面建立一個函式叫做 escape,php 內建函式 htmlspecialchars()

function escape ($str) {
  return htmlspecialchars($str, ENT_QUOTES);
}
  • 在顯示的時候做跳脫,因為以後有可能其他手機 app 也會用到,應該保持使用者輸入的內容

  • 因此通常會在 index.php, login.php 等做跳脫,而不是在 handle_login.php 裡面做

  • 只要使用者可以輸入的地方,都必須要做這件事










Related Posts

個人CodeBase紀錄 - EP.1 先來加入類別庫 真酷

個人CodeBase紀錄 - EP.1 先來加入類別庫 真酷

CSS 生成藝術初探與 css-doodle 簡介

CSS 生成藝術初探與 css-doodle 簡介

React 增進效能,避免重複渲染 Rerender

React 增進效能,避免重複渲染 Rerender


Comments